In [2]:
Image('images/pydata_logo.png', width='300px')
Out[2]:

PyData London News November 2022¶

68th Meetup, hosted by MAN Group¶

@PyDataLondon¶

PyData Code of Conduct¶

https://pydata.org/code-of-conduct/¶

In [3]:
IFrame('https://pydata.org/code-of-conduct/', **default_size)
Out[3]:

NumFOCUS¶

  • US-based charity in support of open-source scientific computing
  • Financial and admin support for many open-source projects
  • Support for many community events
  • https://numfocus.org
In [4]:
Image('images/numfocus.png', **default_size)
Out[4]:

PyData¶

  • Educational program by NumFOCUS
  • A global community
  • 212 groups world-wide (+12 since May 2022!) 🇳🇿🇳🇿🇳🇿
  • 200,000+ users world-wide (+9000 since May 2022!)
  • https://www.meetup.com/pro/pydata/
In [5]:
Image('images/pydata-map.png', **default_size)
Out[5]:
In [6]:
Image('images/pydata-uk-map.png', **default_size)
Out[6]:

PyData London¶

  • 11,400+ members, ~5%
  • Monthly meetup and annual conference
  • All run by volunteers
  • https://london.pydata.org/
  • Propose a Talk: https://london.pydata.org/submit-a-talk/
In [7]:
Image('images/pydata-london-screenshot.png', **default_size)
Out[7]:

Upcoming Conferences¶

🇺🇸 Nov 9th - 11th 2022 = PyData NYC 2022 (USA)¶

🌎 Dec 1st - 3rd 2022 = PyData Global 2022 (The Internet)¶

🇳🇱 Dec 2nd 2022 = PyData Eindhoven 2022 (Germany)¶

🇮🇱 Dec 13th 2022 = PyData Tel Aviv 2022 (Israel)¶

🌎 Dec 15th 2022 NormConf https://normconf.com/ (The Internet)¶

Upcoming CFPs¶

🇳🇱 Wed 2nd November = PyData Eindhoven 2022¶

🇺🇸 Wed 16th November = PyCascades 2023¶

🇺🇸 Sat 10th December = PyCon US 2023¶

Upcoming Local Meetups & Events¶

🎄 Tue 12th December = ⭐ PyData London (69th Meetup) ⭐¶

🐍 Tue 10th January = ⭐ PyData London (70th Meetup) ⭐¶

POTM (Python Of The Month)¶

#1 Python 3.11¶

In [8]:
IFrame('https://docs.python.org/3/whatsnew/3.11.html', **default_size)
Out[8]:
In [9]:
float('Emlyn')
float('Clay')
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In [9], line 1
----> 1 float('Emlyn')
      2 float('Clay')

ValueError: could not convert string to float: 'Emlyn'
In [20]:
def my_errant_function():
    a = { 'b': 10 }
    c = a['b']
    d = a['c']

my_errant_function()
Unexpected exception formatting exception. Falling back to standard exception
Traceback (most recent call last):
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/interactiveshell.py", line 3433, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/folders/m8/x8nfybxd4wjfc5rwtrlkvdzm0000gn/T/ipykernel_26252/3688919472.py", line 6, in <module>
    my_errant_function()
    ^^^^^^^^^^^^^^^^^^^^
  File "/var/folders/m8/x8nfybxd4wjfc5rwtrlkvdzm0000gn/T/ipykernel_26252/3688919472.py", line 4, in my_errant_function
    d = a['c']
        ~^^^^^
KeyError: 'c'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/interactiveshell.py", line 2052, in showtraceback
    stb = self.InteractiveTB.structured_traceback(
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/ultratb.py", line 1112, in structured_traceback
    return FormattedTB.structured_traceback(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/ultratb.py", line 1006, in structured_traceback
    return VerboseTB.structured_traceback(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/ultratb.py", line 859, in structured_traceback
    formatted_exception = self.format_exception_as_a_whole(etype, evalue, etb, number_of_lines_of_context,
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/ultratb.py", line 793, in format_exception_as_a_whole
    self.get_records(etb, number_of_lines_of_context, tb_offset) if etb else []
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/IPython/core/ultratb.py", line 848, in get_records
    return list(stack_data.FrameInfo.stack_data(etb, options=options))[tb_offset:]
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/stack_data/core.py", line 583, in stack_data
    yield from collapse_repeated(
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/stack_data/utils.py", line 83, in collapse_repeated
    yield from map(mapper, original_group)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/stack_data/core.py", line 573, in mapper
    return cls(f, options)
           ^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/stack_data/core.py", line 537, in __init__
    self.executing = Source.executing(frame_or_tb)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/executing/executing.py", line 378, in executing
    assert_(new_stmts <= stmts)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/emlynclay/.pyenv/versions/3.11.0b3/lib/python3.11/site-packages/executing/executing.py", line 154, in assert_
    raise AssertionError(str(message))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError
In [28]:
IFrame('https://peps.python.org/pep-0659/', **default_size)
Out[28]:

Tonight's Schedule¶

18:30 Doors open¶

19:00 Talks start ⬅️ YOU ARE HERE¶

19:15 Talk #1 + Q&A¶

19:45 Break 🥂¶

20:00 Talk #2 + Q&A¶

20:30 ⚡ Lightning Talks ⚡ + 📣 Community Announcements 📣¶

20:45 to 21:00 We're done 🔜 The Banker 🍻¶

The 7 lines of code you need to run faster real-time inference — Adrian Boguszewski¶

You've already trained your great neural network. It reaches 99.9% of accuracy and saves the world, so you would like to deploy it. However, it must run in real time and process data locally, and you don't want to build a web API. After all, you are a Data Scientist, not a Web Developer… So, is it possible to automatically optimize and run the network fast on the local hardware you have, not the hardware you wish you had? Absolutely!

Introducing Nebari: An open source JupyterHub distribution that provides an all-in-one development and experimentation platform for teams to work efficiently and collaboratively — Amit Kumar¶

In this talk, I will demonstrate how Nebari, an open source project can be used to setup a full-fledged Data Science environment on major cloud providers with a simple configuration file, without the knowledge of complex terms like "Kubernetes" & "Load balancer".

⚡ Lightning Talks ⚡¶

Intermediate Python regex against the clock. — Ned Stratton¶

Humble Data: Teaching Data Science at PyCon Ghana. — Cheuk Ting Ho¶